#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <iostream>
#include <stdio.h>

int main()
{
    cv::Mat img1, img2, img3, img4;
    cv::Mat image, mask;
    image = cv::imread("../lol17.jpg");

    img1 = image(cv::Rect(100, 100, 250, 300));
    // imshow("img1", img1);

    mask = cv::Mat::zeros(image.size(), CV_8UC1);// 创建一张image.size()大小的，单通道的的黑色图像
    // imshow("mask", mask);
    mask(cv::Rect(100, 100, 250, 300)).setTo(255);
    // imshow("mask", mask);

    image.copyTo(img2, mask);// 掩模中黑色的像素值是０，所以相与的结果必定是０，所以最终图像上还是黑色，
//    imshow("Image", image);
//    imshow("img2", img2);


    image.copyTo(img3);
    imshow("img33", img3);
    img3.setTo(0, mask);// 把矩阵mask中元素不为0的点全部变为value值；
    imshow("Image", image);
    imshow("img3", img3);

    cv::waitKey();
    return 0;
}
